DOMENII DE INTERES

Compresie de date

Compresia de date a inceput sa fie un domeniu de preocupare special atunci cand l-am intalnit pe Daniel VERNIS , programator de exceptie, cu idei si care a inteles clar despre ce este vorba. Atunci am inceput sa clarificam niste aspecte dar foarte important a fost sa fie scrise programe care implementeaza algoritmii de compresie. S-a procedat la o clasificare a algoritmilor si s-a trecut la crearea de seturi de date de test cu care sa se verifice nivelul de performanta a algoritmilor. Cu o putere extraordinara de munca, cu o inteligenta remarcabila, Daniel a inteles despre ce era vorba si a trecut la realizarea unei biblioteci de programe de compresie si a realizat tot felul de testari si rezultatele obtinute au fost supuse unei analize ce a permis tratarea diferentiata a algoritmilor functie de natura continutului digital al fisierelor si functie de lungimea acestor fisier. S-au creat seturi de date de test formate din fisiere generate cu continut digital controlat. Am muplicat multe articole impreuna, am publicat si o carte si Daniel, datorita unor conditii vitrege a trebuit sa plece din invatamantul superior si a lucrat la firme mari, apoi a lucrat in America si acum lucreaza in Anglia si ii este foarte bine. Am facut impreuna si un doctorat, el fiind un tip straluitor, cu rezultate de exceptie. Comprimarea datelor este un alt termen care vizeaza acelasi obiectiv, adica reducerea spatiului ce memorie ocupat de un fisier. In anul 2001, pe 7 decembrie, in cadrul unui workshop, un grup de studenti au prezentat o serie de lucrari in cadrul cercului de Compresie de adte pe care il coordonam.

Programarea calculatoarelor

Programarea trebuie inteleasa strict ca activitate intelectuala, de creatie. Fiecare program este altceva, nou, care solicita pe programator foarte mult. Este si o tendinta de a face din programare indistrie dar asa ceva este foarte greu de realizat fara riscuri importante. Programatorii lucreaza in echipa dar si corul de la opera este tot o echipa si nu face fiecare ce vrea acolo cand canta. Si orchestra este tot o echipa si fiecare instrumentist creaza si are locul si rolul sau bine definit. Nu face fiecare ce vrea. Asa ca si in activitatea de programare este cam acelasi lucru ca intr-o orchestra. Partitura este formata din specificatii. Instrumentul este limbajul de programare si un mediu in care se lucreaza. Tot ce trebuie sa faca programatorul este sa citeasca partitura, adica specificatiile si sa manuiasca cu arta instrumentul adica instructiunile limbajului si resursele mediului sub care isi dezvolta aplicatia. El face o arta, arta programarii chiar daca lucreaza intr-o echipa si asemeni unei echipe, care da un spectacol de nenumarate ori, el, programatorul de fiecare data face un act de creatie pentru ca la fiecare program are o alta partitura, foloseste aceleasi instrumente dar publicul lui adica utilizatorii, sunt de fiecare data altii.


Limbaje de asamblare

Meseriasul adevarat este acela care stie limbaje de asamblare. Nu poti fi un mare pictor daca n-ai trecut pe la un mare maestru. Este adevbarat ca la umbra marilor stejari nu prea creste ceva, dar de la un maestru tot omul are ceva de invatat. Limbajele de asamblare clarifica totul si daca programatorul stie aceste limbaje, patrunde fara dificultate in toate mecanismele fine ale programarii si nimic nu i se va mai parea greoi si de neanteles. Multi se feresc de aceste limbaje si numai pentru faptul ca nu le inteleg le scot din programele de invatamant sub presiunea maselor. dar exista si situatii in care cei care sunt pusi sa-i invete pe altii programarea in limbaje de asamblare nu o fac pentru ca chiar ei sunt destul de departe de a fi inteles adevaratele lucruri de finete. Devine comic atunci cand oamenii vorbesc despre pinteri si ei nu stiu tipurile de adresare. Devine special sa se abordeze transferul de parametri de pe stiva si oamenii nu vad ce e cu aceasta si care este continutul ei, desi toate sunt bine prezentate in literatura. E mult prea complicat sa se piarda timpul cu asa ceva. Asa ca mai bine cu un nivel de superficialitate acceptat ca nu a murit nimeni de foame daca nu a stiut limbaje de asamblare. Dar nici mare performanta nu a facut...

Structuri de date

Structurile de date sunt asemeni aerului apei si statisticii cum zicea un clasic numit profesorul Capanu... Numai asa se explica prezenta structurilor de date in toate cursurile de informatica. Dar trebuie spus clar ca exista un domeniu numit STRUCTURI DE DATE si cartile, voluminoase, dealtfel, sunt structurate clasic astfel incat tot poporul sa inteleaga ce si cum. Cand s-a pornit la drum in ale informaticii economice am primit sarcina sa preiau aceasta disciplina. Ca un ostean disciplinat am vrut sa vad ce se intampla pe la marile case, adica la marile universitati din America. Am vazut carti de acolo, programe de invatamant si totul era foarte clar mai ales ca veneam din zona limbajelor de asamblare. Si a fost ziua a sasea, adica la facerea lumii, a fost randul structurilor de date sa se faca si s-au facut. Impreuna cu foarte tanarul Adam Romica am trudit si am scos o carte si o culegere de probleme. A scandalizat nu continutul ci faptul ca eu priofesorul scriam cu preparatorul Adam Romica. daca lucraseram cot la cot, era cel putin indecent sa publica aceasta carte fara ca prietenul meu si colaboratorul meu sa lipseasca de pe coperta doar de dragul pastrarii pedigeeului meu. cate nopti nu am lucrat cu Romica la calculatoarele de la sindicatul de la energetica si cate nopti nu am pierdut sa facem programare orientata obiect in Pascal, pentru ca am considerat ca si obiectele sunt tot structuri de date dar cu mult mai neomogene. Mai tarziu Romica a plecat la Bacau, apoi am lucrat cu Paul Pocatilu, cu Doru Ungureanu, cu Doru Cazan, cu Mark Zsolt si cu Marius Popa. Au venit din urma tinerii Catalin Boja, Cristian Ciurea si Mihai Doinea. Chiar am scris o carte in doua volume cu foarte multi autori, carte ce a luat premiul; Academiei Romane.

Managementul calitatii software

Calitatea m-a preocupat dintodeauna mai ales cand a fost vorba de calitatea software. Cand foarte multi ironizau aceste preocupari deja aveam o foarte completa documentatie. Inclusiv cartea Software Science eu am comandat-o prin Biblioteca Americana si cand am fost anuntat ca a sosit, la multi li s-au facut ochii cat cepele, ca eu aveam vezi-Doamne, legaturi cu America, in acei ani cand turnatoriile erau in floare. Am lucrat cu Romulus Arhire, cu Alexandru Balog si cu Marian Macesanu toti de la ICI si am facut cercetari interesante. Mai tarziu am atras si alti colaboratori dar a fost greu ca numai noncalitatea se plateste prin gravele prejudicii pe acre le genereaza. Mai tarziu am condus si teze de doctorat si Laurentiu Teodorescu, Paul Pocatilu, Marian Cristescu, Cristian Diaconu, Gheorghe Nosca, Otilia Pirlog si Popa Marius sunt numai cativa care au avut teze de doctorat stralucite in acest domeniu de cercetare. uimeste prin delicatetea dantelariei in piatra si pentru armonia arhitecturala. Alhambra intruchipeaza perfectiunea artei maure. fantani, coloane, mozaicuri si arcade imbinate intr-un intreg care numai sub soarele arzator al Granadei se regaseste pe sine insasi.



Ion IVAN, Adrian VISOIU - BAZA DE MODELE ECONOMICE Editura ASE, Bucuresti, 2005, ISBN 973-594-571-1, 302 pg

Teoria modelarii

Modelarea este esentiala in analiza calitatii software. Numai aparitia tanarului Adrian Visoiu a permis sa incep sa concretizez preocuparile in acest domeniu. Era nevoie de un tanar foarte bun programator, care a inteles in detaliu cerintele de modelare. Am ajuns departe cu cercetarile impreuna pentru ca lucrarea BAZELE de MODELE certifica acest lucru. Adrian era student in anul 5 cand am publicat o carte masiva despre acest subiect. Au urmat si alte rezultate dar considera ca teza de doctorat in care Adrian a introdus algoritmii genetici venind si cu un produs original al sau reprezinta pun punct de referinta pentru practica utilizarii algoritmilor genetici in mod efectiv. S-a conturat chiar o tehnologie originala de rafinare a modelelor pe acre Adrian trebuia sa o dezvolte si chiar sa scrie ca singur autor o carte care zic eu ar fi fost o realizare si originala si practica cu finalitate si deosebita si mai ales novatoare prin ceea ce a obtinut el acolo. Din punctul meu de vedere, impreuna am clarificat foarte multe aspecte ce mi-au permis sa merg mai departe atunci cand mi-am pus problemele legate de modelarea calitatii aplicatiilor informatice orientate spre cetatean - AIOC. locul pe care orice muritor isi doreste sa-l viziteze primul atunci cand pune piciorul in Atena. Nu mai poti astepta o clipa fara sa urci pe acel deal miraculos, acolo unde, de veacuri te privesc coloanele impunatoare si cariatidete enigmatice. Este simbolul Greciei de dintotdeauna, cu acel cer de un albastru pentru care nu exista cuvinte sa fie descris.

Entitatile text si clonarea lor

Clonarea informatica a facut mare zarva la o conferinta la Chisinau. S-a vazut ca lumea intelege cu anumite limitari acest domeniu ale caror riscuri sunt enorme. cand am pus prroblema odata in senat, prin 2000 s-a vazut reactia de respingere a verificarii ca doua entitati adica a doua teze a doua lucrari de licenta sunt diferite. Si iata-ne acum in 2011 ca Legea invatamantului sanctioneaza violent plagiatul... Ce bine era daca entitatile text erau luate in considerare acum 9-10 ani... Marius Popa a facut o teza de doctorat pe calitate aplicatii informatice cu referire clara la entitati text. De fapt noi am si scris impreuna niste carti si despre clonare si despre entitati cu operatii cu tot. S-a dovedit un mod clar de a vedea ce se intampla acum cu continutul digital, continut care creste mai mult decat exponential, adica deosebit de violent sa nu spun atroce. este cautat de toti turistii straini care vin in Ro. Ei stiu ca acolo a fost locul de bastina a lui Dracula. Nimeni nu le va scoate aceasta din testele lor pentru ca peste tot se stie de Dracula, de vampiri si asta s-a petrecut in Transilvania si castelul acesta este castelui lui Dracula si punct.

Managementul calitatii in Securitatea informatica

Securitatea informatica este un domeniu de exceptie pentru tot ce se intampla cu aplicatiile online si cu aplicatiile mobile. Chiar am dezvoltat o colaborare cu Cristian Toma si chiar a rezultat si un Handbook, primul de o asemenea anvergura pentru un master care cand a demarat a avut si o carte, ceea ce rar se intampla la case mari...
Ideea a fost sa aducem mari profesori din toata tara, lucru care a iritat desi in toata lumea asa se procedeaza. A acceptat profesorul Victor Patriciu de la Academia Tehnica Militara, a acceptat progeforul Valentin Cristea de la Universitatea Politehnica Bucuresti si profesorul Nicolae Tomai de la Universitatea Babes Bolyai. A venit sa predea doamna profesoara Mihaela Muntean din Timisoara de la Universitatea de Vest. Treptat-treptat au mai fost invitati si alti profesori de la Universitatea Bucuresti dar colaborarea a fost de scurta durata. Aici s-a prezentat lucruri foarte noi si atractive. Trebuie insa realizata si o colaborare cu strainatatea dar asa cum curg aici lucrurile, nu vad prea curand o astfel de abordare.

Testarea software orientat obiect

Testarea este singurul mod practic de a pune in evidenta ca un program este sau nu este bun, merge sau nu merge, rezolva sau nu rezolva problema pentru care a fost construit. Exista o arta a testarii dar exista multe tehnici de testare. De la aspectele practice pana la testarea automata sau testarea simbolica drumul este foarte lung, iar utopiile abunda fara a depasi planul strict teoretic al unor mici prorame fara a rezista la marile aplicatii. Este important ca orice programator sa deprinda tehnicile de testare, sa lucreze cu debuggere performante dar trebuie ca fiecare programator sa defineasca acel context care sa-i scoata in evidenta performanta, ca dezvoltator de aplicatii foarte bune. Metodele de testare software orientat obiect vin cu acel pus care se adapteaza componentelor mostenite, incapsulate si polimorfe, care sunt cu totul altceva decat ceea ce era cunoscut in programarea de aytadata. Trebuie insa realizata si o colaborare cu strainatatea dar asa cum curg aici lucrurile, nu vad prea curand o astfel de abordare.